package com.leecode.xiehf.page_12;

import java.util.*;

public class Solution_0554 {

    public static void main(String[] args) {
        Solution_0554 solution = new Solution_0554();
        List<List<Integer>> list = new ArrayList<>();

        List<Integer> a = new ArrayList<>();
        a.add(1);
        a.add(2);
        a.add(2);
        a.add(1);
        List<Integer> b= new ArrayList<>();
        b.add(3);
        b.add(1);
        b.add(2);
        List<Integer> c= new ArrayList<>();
        c.add(1);
        c.add(3);
        c.add(2);
        List<Integer> d= new ArrayList<>();
        d.add(2);
        d.add(4);
        list.add(a);
        list.add(b);
        list.add(c);
        list.add(d);
        int i = solution.leastBricks(list);
        System.out.println(i);
    }


    public int leastBricks(List<List<Integer>> wall) {
        Map<Integer, Integer> map = new HashMap<>();
        for (List<Integer> line : wall) {
            int n = line.size();
            int sum = 0;
            for (int i = 0; i < n - 1; i++) {
                sum += line.get(i);
                // 每块砖的右侧边缘到最左边的间隙
                // 每执行一行如果有相同的就+1
                map.put(sum, map.getOrDefault(sum, 0) + 1);
            }
        }
        int max = 0;
        for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
            max = Math.max(max, entry.getValue());
        }
        return wall.size() - max;
    }
}
